package com.xjl.javacore.code.throwable;

import lombok.extern.slf4j.Slf4j;

/**
 * （主类）
 * 这个是异常专题（从设计者的角度分析问题）
 * @author xiaojinlu1990@163.com
 * date 2020-01-16
 *
 * 异常处理是为了解决程序出现问题设计的一套处理机制
 * 原则：
 *      明确的错误信息
 *      不能有敏感信息
 *      能处理就不处理
 * 目的：提示人明确问题并解决
 *       明确代码中问题并能在机器中解决
 *
 */
@Slf4j
public class ThrowableExample {

    public static void main(String[] args) {
        RunTimeExceptionExample runTimeExceptionExample = new RunTimeExceptionExample(ErrorCode.ERROR_ADD_USER.getValue(),ErrorCode.ERROR_ADD_USER.getDesc());
        System.out.printf(runTimeExceptionExample.resultCode);
        AssertUtil.assertTrue(true,ErrorCode.ERROR_ADD_USER.getValue(),ErrorCode.ERROR_ADD_USER.getDesc());
    }

    public static void exception1(){
        try {
           //业务代码
        } catch (Exception e) {
            e.printStackTrace();//不能抛出具体的堆栈信息不利于排查问题
            log.error("具体说明","异常信息");
        }
    }

}



